package com.a2j.beans.car.type;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * Author: bzb
 * Data: 2022/1/18 22:39
 * Desc: 车型出入参对象
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(description = "车型出入参对象")
public class CarTypeVO {

    // 额外出参
    @ApiModelProperty(value = "品牌id")
    private Integer brandId;
    @ApiModelProperty(value = "品牌")
    private String  brandName;
    @ApiModelProperty(value = "子品牌id")
    private Integer subBrandId;
    @ApiModelProperty(value = "子品牌")
    private String  subBrandName;
    @ApiModelProperty(value = "车系id", required = true)
    private Integer seriesId;
    @ApiModelProperty(value = "车系")
    private String  seriesName;

    @ApiModelProperty(value = "车型id")
    private Integer typeId;
    @ApiModelProperty(value = "车型", required = true)
    private String typeName;
    @ApiModelProperty(value = "车规id", required = true)
    private Integer specificationId;
    @ApiModelProperty(value = "车规")
    private String specificationName;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "开关, 0:关  1:开")
    private Integer enable;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "YYYY-MM-dd HH:mm:ss", timezone = "GM+8")
    @DateTimeFormat(pattern = "YYYY-MM-dd HH:mm:ss") // 处理web端提交参数的bug
    private Date createTime;

    @ApiModelProperty(value = "创建人")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String createrName;



    @ApiModelProperty(value = "规格类型")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String sizeType;// 规格类型

    @ApiModelProperty(value = "指导价(数字型,元)")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private BigDecimal price;// 指导价(数字型,元)

    @ApiModelProperty(value = "指导价(文本型,万)")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String priceStr;// 指导价(文本型,万)

    @ApiModelProperty(value = "生产年份")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String yearType;// 生产年份

    @ApiModelProperty(value = "销售状态")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String saleState;// 销售状态

    @ApiModelProperty(value = "排放标准")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String effluentStandard;// 排放标准

    @ApiModelProperty(value = "发动机")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String fadongji;

    @ApiModelProperty(value = "气缸数")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String qigangshu;

    @ApiModelProperty(value = "变速箱")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String biansuxiang;

    @ApiModelProperty(value = "进气形式")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String jinqixingshi;

    @ApiModelProperty(value = "驱动方式")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String qudongfangshi;

    @ApiModelProperty(value = "排量")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String pailiang;

    @ApiModelProperty(value = "燃油型号")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String ranyouxinghao;

    @ApiModelProperty(value = "邮箱容积")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String youxiangrongji;

    @ApiModelProperty(value = "最高车速")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String zuigaochesu;

    @ApiModelProperty(value = "最大马力")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String zuidamali;

    @ApiModelProperty(value = "最大功率")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String zuidagonglv;

    @ApiModelProperty(value = "长宽高")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String changKuanGao;

    @ApiModelProperty(value = "座位数")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String zuoweishu;

    @ApiModelProperty(value = "行李箱容积")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String xinglixiangrongji;

    @ApiModelProperty(value = "车身结构")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String cheshenjiegou;

}
